// 文件路径: src/main/java/com/cupk/services/AiService.java

package com.cupk.services;

import com.cupk.dtos.GenerateDescriptionRequest;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

@Service
@RequiredArgsConstructor
public class AiService {

    /**
     * 根据项目名称生成项目描述（模拟实现）
     * @param request 包含项目名称等信息的请求体
     * @return AI生成的项目描述字符串
     */
    public String generateProjectDescription(GenerateDescriptionRequest request) {
        String projectName = request.getProjectName();

        // 在真实场景中，这里会调用一个外部的LLM API
        // return llmClient.generate("请为名为'" + projectName + "'的科研项目生成一段详细描述...");

        // --- 以下是模拟逻辑 ---
        // 模拟网络延迟
        try {
            Thread.sleep(800); // 模拟800ms的LLM响应时间
        } catch (InterruptedException e) {
            Thread.currentThread().interrupt();
        }

        // 根据项目名称中的关键词，返回不同的模板化描述
        if (projectName.contains("AI") || projectName.contains("人工智能")) {
            return String.format(
                    "本项目“%s”旨在探索人工智能前沿技术在特定领域的应用。研究将聚焦于核心算法的优化与实现，通过构建高效的深度学习模型，解决行业内的关键技术难题。项目预期将产出一系列具有创新性的研究成果，包括高水平学术论文及相关软件著作权，为推动该领域的技术进步贡献力量。",
                    projectName
            );
        }
        if (projectName.contains("电池") || projectName.contains("能源")) {
            return String.format(
                    "本项目“%s”专注于新能源技术的关键环节。核心研究内容包括新材料的探索与性能评估、系统能量管理策略的优化等。我们致力于通过实验与仿真相结合的方法，开发出更高效、更安全、更持久的能源解决方案，以期在相关领域取得突破性进展，并申请核心技术专利。",
                    projectName
            );
        }

        // 默认的通用模板
        return String.format(
                "本项目“%s”是一项前瞻性的科学研究计划。其主要目标是深入探索[请填写具体领域]的核心科学问题，并开发相应的创新技术解决方案。研究将采用[请填写研究方法，如：定量分析与案例研究]相结合的路径，系统性地开展工作。项目预期将为学术界和工业界提供有价值的理论参考与实践指导。",
                projectName
        );
    }
}